import java.io.InputStream;

public class Theme {
	private String backgroundColor;
	private String textColor;
	private String linkColor;
	private String sidebarFillColor;
	private String sidebarBorderColor;
	private InputStream backgroundImage;
	private boolean tileBackgroundImage;
	private InputStream headerFile;
	private boolean tileHeader;

	/**
	 * A Theme class that holds all of the parameters for a given theme
	 * 
	 * @param backgroundColor
	 *            - the color behind the background image
	 * @param textColor
	 * @param linkColor
	 *            - color of link text
	 * @param sidebarFillColor
	 *            - not used currently
	 * @param sidebarBorderColor
	 *            - not used currently
	 * @param tileBackgroundImage
	 *            - a boolean, false to not tile, true to tile backgroundImage
	 * @param backgroundImage
	 *            - image in front of background
	 * @param headerFile
	 *            - the header found on the twitter 'me' page
	 * @param tileHeader
	 *            - a boolean, false to not tile, true to tile header
	 */
	public Theme(String backgroundColor, String textColor, String linkColor,
			String sidebarFillColor, String sidebarBorderColor,
			InputStream backgroundImage, boolean tileBackgroundImage,
			InputStream headerFile, boolean tileHeader) {
		this.backgroundColor = backgroundColor;
		this.textColor = textColor;
		this.linkColor = linkColor;
		this.sidebarFillColor = sidebarFillColor;
		this.sidebarBorderColor = sidebarBorderColor;
		this.backgroundImage = backgroundImage;
		this.headerFile = headerFile;
		this.tileHeader = tileHeader;
	}

	public String getBackgroundColor() {
		return backgroundColor;
	}

	public void setBackgroundColor(String backgroundColor) {
		this.backgroundColor = backgroundColor;
	}

	public String getTextColor() {
		return textColor;
	}

	public void setTextColor(String textColor) {
		this.textColor = textColor;
	}

	public String getLinkColor() {
		return linkColor;
	}

	public void setLinkColor(String linkColor) {
		this.linkColor = linkColor;
	}

	public String getSidebarFillColor() {
		return sidebarFillColor;
	}

	public void setSidebarFillColor(String sidebarFillColor) {
		this.sidebarFillColor = sidebarFillColor;
	}

	public String getSidebarBorderColor() {
		return sidebarBorderColor;
	}

	public InputStream getBackgroundImage() {
		return backgroundImage;
	}

	public void setBackgroundImage(InputStream backgroundImage) {
		this.backgroundImage = backgroundImage;
	}

	public void setSidebarBorderColor(String sidebarBorderColor) {
		this.sidebarBorderColor = sidebarBorderColor;
	}

	public InputStream getHeaderFile() {
		return headerFile;
	}

	public void setHeaderFile(InputStream headerFile) {
		this.headerFile = headerFile;
	}

	public boolean isTileHeader() {
		return tileHeader;
	}

	public void setTileHeader(boolean tileHeader) {
		this.tileHeader = tileHeader;
	}

	public boolean isTileBackgroundImage() {
		return tileBackgroundImage;
	}

	public void setTileBackgroundImage(boolean tileBackgroundImage) {
		this.tileBackgroundImage = tileBackgroundImage;
	}

}
